<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>el与data的两种写法</title>
    <script type="text/javascript" src="../js/vue.js"></script>
</head>

<body>

    <!-- 
    data与el的2种写法
    1.el有2种写法
    (1).new Vue时候配置el属性。
    (2).先创建vue实例,随后再通过vm.$mount( "#root')指定el的值。
    2.data有2种写法
    (1).对象式
    (2).函数式
    如何选择:目前哪种写法都可以，以后学习到组件时，data必须使用函数式，否则会报错。
    3.一个重要的原则:
    由Vue管理的函数，一定不要写箭头函数，一旦写了箭头函数，this就不再是Vue实例了。 
    -->
    

    <div id="root">
        <h1>你好,{{name}}</h1>
    </div>
    
</body>
<script>
    // const v = new Vue({
    //     el:'#root',//一开始就指定对象(第一种写法)
    //     过程,把容器(div)中的模板交给Vue实例进行解析,
    //     解析后把解析完的内容(name的值)交给容器放到页面的指定位置上( 挂载 )
    //     data:
    //     {
    //         name:'吴亦凡',
    //     }
    // })
    // console.log(v)
    

    // setTimeout(() => {
    //     v.$mount('#root')//指定对象,回头再指定(第二种写法)(也是挂载)
    // }, 1000);


    // data的两种写法
    new Vue({
        el:'#root',
        // data的第一种写法:对象式
        // data:
        // {
        //     name:'吴亦凡',
        // }
        // data的第二种写法:返回(return)式,使用组件时只能使用data:function(){},也可以简写data(){}
        data(){
            return{
                name:'吴亦凡'
            }
        }
    })
</script>
</html>